package com.meilai.project.controller.web.menu;

import com.meilai.project.controller.web.BaseController;
import com.meilai.project.controller.web.market.dto.BillMarketDTO;
import com.meilai.project.controller.web.menu.dto.MenuDTO;
import com.meilai.project.controller.web.menu.dto.MenuListDTO;
import com.meilai.project.controller.web.menu.entity.MenuEntity;
import com.meilai.project.controller.web.menu.service.MenuService;
import com.meilai.project.controller.web.menu.vo.MenuVO;
import com.meilai.project.dto.base.ApiResult;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
@RequestMapping("api/web/menu")
@Api(tags = "菜单")
public class MenuController extends BaseController {

//    @Autowired
//    private MenuService service;
//
//    @GetMapping("list")
//    @ApiOperation(value = "列表分页")
//    public ApiResult<List<MenuEntity>> list(@ApiParam("form") MenuListDTO dto) {
//        List<MenuEntity> menus = service.listMenuByUserId(dto, getUserId());
//        return ApiResult.ok(menus);
//    }
//
//    @GetMapping("info")
//    @ApiOperation(value = "菜单详情")
//    public ApiResult<MenuEntity> info(@PathVariable Long menuId){
//        MenuEntity entity = service.getMenuById(menuId);
//        return ApiResult.ok(entity);
//    }
//
//    @GetMapping()
//    public ApiResult add(@ApiParam("json") @RequestBody MenuDTO req){
//        return null;
//    }
//
//    @GetMapping("tree")
//    @ApiOperation(value = "菜单Tree")
//    public ApiResult<List<MenuEntity>> tree(@RequestBody MenuListDTO dto){
//        List<MenuEntity> menus = service.listMenuByUserId(dto, getUserId());
//        service.buildMenuTree(menus);
//        return ApiResult.ok(menus);
//    }
//
//    @DeleteMapping("delete")
//    @ApiOperation(value = "菜单删除")
//    public ApiResult<Boolean> delete(@RequestParam("id") @ApiParam("id") Long id) {
//        try {
//            // 先判断是否存在子菜单
//            if (service.hasChildByMenuId(id)) {
//                return ApiResult.err("请先删除子菜单或按钮");
//            }
//            // 删除操作
//            if (service.deleteMenu(id)) {
//                return ApiResult.ok("删除成功");
//            } else {
//                return ApiResult.err("删除失败");
//            }
//        } catch (Exception e) {
//            return ApiResult.err(e.getMessage());
//        }
//    }
}
